home *** CD-ROM | disk | FTP | other *** search
- /*
- File: FrameList.h
-
- Contains: Linked list of frames, for use by parts
-
- Written by: PartMaker
-
- Theory of Operation:
- This is a quick-n-dirty linked list of ODFrames. To use it, create a
- FrameList and use the Add and Remove methods to add/remove frames.
- To iterate over all the frames, do something like this:
-
- for ( FrameLink *fl = frameList.First(); fl->Frame(); fl = fl->Next() )
- DoSomethingWithFrame( fl->Frame() );
-
- Copyright: © 1995 by Apple Computer, Inc., all rights reserved.
-
- Change History (most recent first):
-
- <2> 3/8/95 JS Updated to b1c13/c14
- <1> 2/2/95 RA first checked in
-
- <0> PartMaker source by Eric Soldan, Tantek Çelik, Jens Alfke, Reggie Adkins
- */
-
- #ifndef _FRAMELIST_
- #define _FRAMELIST_
-
-
- class ODFrame;
-
-
- //========================================================================================
- // FrameLink
- //========================================================================================
-
- class FrameLink
- {
- public:
-
- ODFrame* Frame( ) {return fFrame;}
- FrameLink* Next( ) {return fNext;}
-
- protected:
- FrameLink( ODFrame*, FrameLink *list );
- FrameLink( );
- ~FrameLink( );
-
- ODFrame *fFrame;
- FrameLink *fPrev,
- *fNext;
-
- friend class FrameList;
- };
-
-
- //========================================================================================
- // FrameList
- //========================================================================================
-
- class FrameList : public FrameLink
- {
- public:
- FrameList( );
- ~FrameList( );
- void Add( ODFrame* );
- void Remove( ODFrame* );
- void InvalAllFrames( );
- FrameLink* First( ) {return fNext;}
- };
-
- #endif